#ifndef PROJECTILE_H
#define PROJECTILE_H

#include "Movable.h"

class Player;


// Projectile that the player can shoot.
class Projectile : public Movable
{
public:
	Projectile (int x, int y, int hDirection, int vDirection, Player* owner);
	virtual ~Projectile();

	virtual void getTimedDesiredMove(int& hDirection, int& vDirection);
	virtual bool isPassable(const GameObject* gameObject) const;
	virtual void handleCollision(GameObject* gameObject);

	virtual void setDrawColor() const;
	virtual void drawObject(int row, int col) const;

	void clearOwner();

private:
	// Can be NULL
	Player* owner;
};

#endif